package com.greenold.check.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.greenold.common.annotation.Excel;
import com.greenold.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 入住办理对象 checkin
 * 
 * @author ruoyi
 * @date 2025-10-13
 */
public class Checkin extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private String id;

    /** 编号 */
    @Excel(name = "编号")
    private String code;

    /** 标题 */
    private String title;

    /** 老人id */
    @Excel(name = "老人id")
    private String elderId;

    /** 业务id（流程实例） */
    private String businessId;

    /** 养老顾问 */
    private String consultant;

    /** 入住时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "入住时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date checkinTime;

    /** 原因 */
    private String reason;

    /** 申请人 */
    @Excel(name = "申请人")
    private String applicant;

    /** 部门编号 */
    private String departmentCode;

    /** 申请人id */
    private String applicantId;

    /** 流程状态 */
    @Excel(name = "流程状态")
    private String processStatus;

    /** 审核状态 */
    @Excel(name = "审核状态")
    private String approvalStatus;

    /** 其他申请信息 */
    private String otherInfo;

    /** 评估信息 */
    private String assessment;

    /** $column.columnComment */
    @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
    private Date createdAt;

    /** $column.columnComment */
    private Date updatedAt;

    /** 扩展字段1 */
    private String extend1;

    /** 扩展字段2 */
    private String extend2;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setCode(String code) 
    {
        this.code = code;
    }

    public String getCode() 
    {
        return code;
    }

    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }

    public void setElderId(String elderId) 
    {
        this.elderId = elderId;
    }

    public String getElderId() 
    {
        return elderId;
    }

    public void setBusinessId(String businessId) 
    {
        this.businessId = businessId;
    }

    public String getBusinessId() 
    {
        return businessId;
    }

    public void setConsultant(String consultant) 
    {
        this.consultant = consultant;
    }

    public String getConsultant() 
    {
        return consultant;
    }

    public void setCheckinTime(Date checkinTime) 
    {
        this.checkinTime = checkinTime;
    }

    public Date getCheckinTime() 
    {
        return checkinTime;
    }

    public void setReason(String reason) 
    {
        this.reason = reason;
    }

    public String getReason() 
    {
        return reason;
    }

    public void setApplicant(String applicant) 
    {
        this.applicant = applicant;
    }

    public String getApplicant() 
    {
        return applicant;
    }

    public void setDepartmentCode(String departmentCode) 
    {
        this.departmentCode = departmentCode;
    }

    public String getDepartmentCode() 
    {
        return departmentCode;
    }

    public void setApplicantId(String applicantId) 
    {
        this.applicantId = applicantId;
    }

    public String getApplicantId() 
    {
        return applicantId;
    }

    public void setProcessStatus(String processStatus) 
    {
        this.processStatus = processStatus;
    }

    public String getProcessStatus() 
    {
        return processStatus;
    }

    public void setApprovalStatus(String approvalStatus) 
    {
        this.approvalStatus = approvalStatus;
    }

    public String getApprovalStatus() 
    {
        return approvalStatus;
    }

    public void setOtherInfo(String otherInfo) 
    {
        this.otherInfo = otherInfo;
    }

    public String getOtherInfo() 
    {
        return otherInfo;
    }

    public void setAssessment(String assessment) 
    {
        this.assessment = assessment;
    }

    public String getAssessment() 
    {
        return assessment;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    public void setExtend1(String extend1) 
    {
        this.extend1 = extend1;
    }

    public String getExtend1() 
    {
        return extend1;
    }

    public void setExtend2(String extend2) 
    {
        this.extend2 = extend2;
    }

    public String getExtend2() 
    {
        return extend2;
    }

    public void Checkin() {
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("code", getCode())
            .append("title", getTitle())
            .append("elderId", getElderId())
            .append("businessId", getBusinessId())
            .append("consultant", getConsultant())
            .append("checkinTime", getCheckinTime())
            .append("reason", getReason())
            .append("applicant", getApplicant())
            .append("departmentCode", getDepartmentCode())
            .append("applicantId", getApplicantId())
            .append("processStatus", getProcessStatus())
            .append("approvalStatus", getApprovalStatus())
            .append("otherInfo", getOtherInfo())
            .append("assessment", getAssessment())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .append("remark", getRemark())
            .append("extend1", getExtend1())
            .append("extend2", getExtend2())
            .toString();
    }

}
